Visual Basic (Declaration) | |
---|---|
Public Overloads Function TryUpdate( _ ByVal key As TKey, _ ByVal value As TValue, _ ByVal comparisonValue As TValue _ ) As Boolean |
Parameters
- key
- The object to use as the key of the element to update.
- value
- The new value for the key if found.
- comparisonValue
- The value that is compared to the value of the element with key.
Return Value
Returns true if the key provided was found and updated to the value.Exception | Description |
---|---|
System.NotSupportedException | The IDictionary is read-only. |
Library/Library.Test/TestSynchronizedCollections.cs
C# | Copy Code |
---|---|
SynchronizedDictionary<int, string> data = new SynchronizedDictionary<int, string>(new Dictionary<int, string>()); Assert.IsTrue(data.TryAdd(1, "a")); Assert.IsFalse(data.TryAdd(1, "a")); Assert.IsTrue(data.TryUpdate(1, "a")); Assert.IsTrue(data.TryUpdate(1, "c")); Assert.IsTrue(data.TryUpdate(1, "d", "c")); Assert.IsFalse(data.TryUpdate(1, "f", "c")); Assert.AreEqual("d", data[1]); Assert.IsTrue(data.TryUpdate(1, "a", data[1])); Assert.AreEqual("a", data[1]); Assert.IsFalse(data.TryUpdate(2, "b")); string val; Assert.IsTrue(data.TryRemove(1, out val) && val == "a"); Assert.IsFalse(data.TryRemove(2, out val)); Assert.AreNotEqual(val, "a"); Assert.IsFalse(data.TryUpdate(1, (k, x) => x.ToUpper())); data[1] = "a"; data[1] = "b"; Assert.IsTrue(data.TryUpdate(1, (k, x) => x.ToUpper())); Assert.AreEqual("B", data[1]); |
VB.NET | Copy Code |
---|---|
Dim data As New SynchronizedDictionary(Of Integer, String)(New Dictionary(Of Integer, String)()) Assert.IsTrue(data.TryAdd(1, "a")) Assert.IsFalse(data.TryAdd(1, "a")) Assert.IsTrue(data.TryUpdate(1, "a")) Assert.IsTrue(data.TryUpdate(1, "c")) Assert.IsTrue(data.TryUpdate(1, "d", "c")) Assert.IsFalse(data.TryUpdate(1, "f", "c")) Assert.AreEqual("d", data(1)) Assert.IsTrue(data.TryUpdate(1, "a", data(1))) Assert.AreEqual("a", data(1)) Assert.IsFalse(data.TryUpdate(2, "b")) Dim val As String Assert.IsTrue(data.TryRemove(1, val) AndAlso val = "a") Assert.IsFalse(data.TryRemove(2, val)) Assert.AreNotEqual(val, "a") Assert.IsFalse(data.TryUpdate(1, Function(k, x) x.ToUpper())) data(1) = "a" data(1) = "b" Assert.IsTrue(data.TryUpdate(1, Function(k, x) x.ToUpper())) Assert.AreEqual("B", data(1)) |
Target Platforms: Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7